# Cargar librerías necesarias
library(readxl)
library(plm)
# Ruta del archivo
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer hoja con datos log transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Preparar datos para panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
library(plm)
modelo_gmm <- pgmm(
formula = DT ~ lag(DT, 1) + MEBITDA + PRO + LIQd + TAMa + ΔAct +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI |
lag(DT, 2:3),
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
summary(modelo_gmm)
save.image("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Ambiente de datos R GMM DT.RData")
savehistory("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Historia R GMM dt.Rhistory")
> # Cargar librerías necesarias
>
# Cargar librerías necesarias
library(readxl)
library(plm)
# Ruta del archivo
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer hoja con datos log transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Preparar datos para panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
library(plm)
modelo_gmm <- pgmm(
+     formula = DT ~ lag(DT, 1) + MEBITDA + PRO + LIQd + TAMa + ΔAct +
# Cargar librerías necesarias
library(readxl)
library(plm)
# Ruta del archivo
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer hoja con datos log transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Preparar datos para panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
library(plm)
modelo_gmm <- pgmm(
formula = DT ~ lag(DT, 1) + MEBITDA + PRO + LIQd + TAMa + ΔAct +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI |
lag(DT, 2:3),
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
summary(modelo_gmm)
savehistory("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Historia R GMM dt.Rhistory")
# Cargar librerías necesarias
library(readxl)
library(plm)
# Ruta del archivo
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer hoja con datos log transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Preparar datos para panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
library(plm)
modelo_gmm <- pgmm(
formula = DT ~ lag(DT, 1) + MEBITDA + PRO + LIQd + TAMa + ΔAct +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI |
lag(DT, 2:3),
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
summary(modelo_gmm)
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Filtrar variables relevantes y convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM con DCP como variable dependiente
form_dcp <- DCP ~ lag(DCP, 1) + MEBITDA + PRO + LIQd + TAMa +
ΔAct + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI |
lag(DCP, 2:3)
# Ejecutar modelo GMM (diferencias, dos pasos)
modelo_dcp <- pgmm(
formula = form_dcp,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
# Mostrar resumen del modelo
summary(modelo_dcp)
install.packages("car")  # Solo una vez
library(car)
# Usamos un modelo lineal con las mismas variables del GMM (excepto la variable dependiente DCP)
modelo_vif <- lm(DCP ~ MEBITDA + PRO + LIQd + TAMa + DAct + RDC + EA + GIA +
LA + RUV + ROA + TAMi + VRI, data = panel)
# Usamos un modelo lineal con las mismas variables del GMM (excepto la variable dependiente DCP)
modelo_vif <- lm(DCP ~ MEBITDA + PRO + LIQd + TAMa + DAct + RDC + EA + GIA +
LA + RUV + ROA + TAMi + VRI, data = panel)
# 1. Estimar modelo GMM para DCP
form_dcp <- DCP ~ lag(DCP, 1) + MEBITDA + PRO + LIQd + TAMa + DAct +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DCP, 2:3)
modelo_dcp <- pgmm(formula = form_dcp, data = panel,
effect = "individual", model = "twosteps", transformation = "d")
# 1. Estimar modelo GMM para DCP
form_dcp <- DCP ~ lag(DCP, 1) + MEBITDA + PRO + LIQd + TAMa + DAct +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DCP, 2:3)
modelo_dcp <- pgmm(formula = form_dcp, data = panel,
effect = "individual", model = "twosteps", transformation = "d")
names(panel)
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)  # <- Añadido para VIF
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Filtrar variables relevantes y convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM con DCP como variable dependiente
form_dcp <- DCP ~ lag(DCP, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DCP, 2:3)
# Ejecutar modelo GMM (diferencias, dos pasos)
modelo_dcp <- pgmm(
formula = form_dcp,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
# Mostrar resumen del modelo
summary(modelo_dcp)
# ----- Cálculo del VIF -----
# Usar solo la parte de regresión (sin instrumentos)
modelo_vif <- lm(DCP ~ MEBITDA + PRO + LIQd + TAMa + `ΔAct` +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI,
data = panel)
# Calcular y mostrar VIF
vif(modelo_vif)
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)  # <- Añadido para VIF
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Filtrar variables relevantes y convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM con DCP como variable dependiente
form_dcp <- DCP ~ lag(DCP, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DCP, 2:3)
# Ejecutar modelo GMM (diferencias, dos pasos)
modelo_dcp <- pgmm(
formula = form_dcp,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
# Mostrar resumen del modelo
summary(modelo_dcp)
# ----- Cálculo del VIF -----
# Usar solo la parte de regresión (sin instrumentos)
modelo_vif <- lm(DCP ~ MEBITDA + PRO + LIQd + TAMa + `ΔAct` +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI,
data = panel)
# Calcular y mostrar VIF
vif(modelo_vif)
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)  # Para calcular VIF
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Filtrar variables relevantes y convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM con DT como variable dependiente
form_dt <- DT ~ lag(DT, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DT, 2:3)
# Ejecutar modelo GMM (diferencias, dos pasos)
modelo_dt <- pgmm(
formula = form_dt,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
# Mostrar resumen del modelo
summary(modelo_dt)
# ----- Cálculo del VIF -----
# Usar solo la parte de regresión (sin instrumentos)
modelo_vif <- lm(DT ~ MEBITDA + PRO + LIQd + TAMa + `ΔAct` +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI,
data = panel)
# Calcular y mostrar VIF
vif(modelo_vif)
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)  # <- Añadido para VIF
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Filtrar variables relevantes y convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM con DLP como variable dependiente
form_dlp <- DLP ~ lag(DLP, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DLP, 2:3)
# Ejecutar modelo GMM (diferencias, dos pasos)
modelo_dlp <- pgmm(
formula = form_dlp,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
# Mostrar resumen del modelo
summary(modelo_dlp)
# ----- Cálculo del VIF -----
# Usar solo la parte de regresión (sin instrumentos)
modelo_vif <- lm(DLP ~ MEBITDA + PRO + LIQd + TAMa + `ΔAct` +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI,
data = panel)
# Calcular y mostrar VIF
vif(modelo_vif)
save.image("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Ambiente de datos R GMM DT.RData")
savehistory("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Historia R GMM dt.Rhistory")
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)  # <- Añadido para VIF
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Filtrar variables relevantes y convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM con DF como variable dependiente
form_df <- DF ~ lag(DF, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DF, 2:3)
# Ejecutar modelo GMM (diferencias, dos pasos)
modelo_df <- pgmm(
formula = form_df,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
# Mostrar resumen del modelo
summary(modelo_df)
# ----- Cálculo del VIF -----
# Usar solo la parte de regresión (sin instrumentos)
modelo_vif <- lm(DF ~ MEBITDA + PRO + LIQd + TAMa + `ΔAct` +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI,
data = panel)
# Calcular y mostrar VIF
vif(modelo_vif)
savehistory("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Historia R GMM dt.Rhistory")
save.image("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Ambiente de datos R GMM DT.RData")
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Filtrar variables relevantes y convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM en sistema (System GMM) con DF como dependiente
form_df_sys <- DF ~ lag(DF, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DF, 1:3)
# Ejecutar modelo GMM en sistema (dos pasos)
modelo_df_sys <- pgmm(
formula = form_df_sys,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "ld"  # <- GMM en sistema
)
# Mostrar resumen del modelo
summary(modelo_df_sys)
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula con instrumentos más restringidos
form_df_sys_mod <- DF ~ lag(DF, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(DF, 2:3)
# Ejecutar GMM en sistema con colapso de instrumentos
modelo_df_sys_mod <- pgmm(
formula = form_df_sys_mod,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "ld",
collapse = TRUE  # <- Reducción de número de instrumentos
)
# Mostrar resumen del modelo
summary(modelo_df_sys_mod)
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)  # <- Añadido para VIF
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Filtrar variables relevantes y convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM con PAT como variable dependiente
form_pat <- PAT ~ lag(PAT, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(PAT, 2:3)
# Ejecutar modelo GMM (diferencias, dos pasos)
modelo_pat <- pgmm(
formula = form_pat,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "d"
)
# Mostrar resumen del modelo
summary(modelo_pat)
# ----- Cálculo del VIF -----
# Usar solo la parte de regresión (sin instrumentos)
modelo_vif <- lm(PAT ~ MEBITDA + PRO + LIQd + TAMa + `ΔAct` +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI,
data = panel)
# Calcular y mostrar VIF
vif(modelo_vif)
# Cargar librerías necesarias
library(plm)
library(readxl)
library(lmtest)
library(sandwich)
library(car)
# Establecer ruta del archivo Excel
ruta <- "C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Base de datos renombrada final 18.05.2025.xlsx"
# Leer la hoja con los datos logarítmicamente transformados
datos <- read_excel(ruta, sheet = "4. BD Comp Media resumida log")
# Convertir variables categóricas
datos$Año <- as.numeric(datos$Año)
datos$NIT <- as.factor(datos$NIT)
datos$`TAMc` <- as.factor(datos$`TAMc`)
# Convertir a panel
panel <- pdata.frame(datos, index = c("NIT", "Año"))
# Definir fórmula del modelo GMM en sistema con PAT como variable dependiente
form_pat_sys <- PAT ~ lag(PAT, 1) + MEBITDA + PRO + LIQd + TAMa +
`ΔAct` + RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI | lag(PAT, 2:3)
# Ejecutar modelo GMM en sistema (System GMM), dos pasos, con instrumentos colapsados
modelo_pat_sys <- pgmm(
formula = form_pat_sys,
data = panel,
effect = "individual",
model = "twosteps",
transformation = "ld",
collapse = TRUE
)
# Mostrar resumen del modelo
summary(modelo_pat_sys)
# ----- Cálculo del VIF -----
modelo_vif <- lm(PAT ~ MEBITDA + PRO + LIQd + TAMa + `ΔAct` +
RDC + EA + GIA + LA + RUV + ROA + TAMi + VRI,
data = panel)
# Calcular y mostrar VIF
vif(modelo_vif)
save.image("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Ambiente de datos R GMM DT.RData")
save.image("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Ambiente de datos R GMM DT.RData")
savehistory("C:/Users/ACER/Desktop/EAFIT/proyecto de grado/Soportes/Regresiones Pyton/Tesis GMM R/Modelo GMM en R DT/Historia R GMM dt.Rhistory")
